using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerAirborneState : PlayerMovementState
{
    public PlayerAirborneState(PlayerMovementMachine stateMachine) : base(stateMachine)
    {
    }

#region IState Methods
    public override void Enter()
    {
        base.Enter();
        ResetSprintState();
        StartAnimation(StateMachine.Player.AnimationData.AirborneParameterHash);        
    }

    public override void Exit()
    {
        base.Exit();
        StopAnimation(StateMachine.Player.AnimationData.AirborneParameterHash);        
    }
#endregion

#region Reusable Methods
    protected override void OnContactWithGround()
    {
        StateMachine.ChangeState(StateMachine.LightLandingState);
    }

    protected virtual void ResetSprintState()
    {
        StateMachine.ReusableData.ShouldSprint = false;
    }
#endregion
}